package com.bsoft.gol.hcs.enumcase;

import lombok.AllArgsConstructor;
import lombok.NoArgsConstructor;

/**
 * @Author impel
 * @Date 2020/9/18 14:53
 * @Description:
 * @Version 1.0
 */
@NoArgsConstructor
@AllArgsConstructor
public enum  InspectionEmum {

    //同步检验申请单信息
    LabRequestExeStatus("LabRequestExeStatus",""),
    //检验申请单查询
    LabRequestQuery("LabRequestQuery","03050012"),
    //获取检验申请单类别和项目
    LabRequestQueryItems("LabRequestQueryItems","03050001"),
    //获取检验单子项目明细
    LabRequestQueryItemDtail("LabRequestQueryItemDtail","03050002"),
    //获取检验样本类型
    LabRequestQuerySampletype("LabRequestQuerySampletype","03050003"),
    //获取检验申请单号
    LabRequestGetRequestId("LabRequestGetRequestId","03050004"),
    //获取检验申请项目附加费
    LabRequestGetSurcharge("LabRequestGetSurcharge","03050005"),
    //提交检验申请单
    LabRequestSubmit("LabRequestSubmit","03050010"),
    //撤销检验申请单
    LabRequestCancel("LabRequestCancel","03050011"),
    //获取检验申请项目采集注意事项
    LabRequestGetCollectNote("LabRequestGetCollectNote","03050020"),
    //检验报告列表获取
    LabReportQueryList("LabReportQueryList","03050200"),
    //检查、检验报告通知推送
    LabReportAudit("LabReportAudit","03050130"),
    //危急值通知
    LabWarnResultSave("LabWarnResultSave","03050300"),
    //危急值查询
    LabWarnResultQuery("LabWarnResultQuery","03050301"),
    //检验危急值确认反馈
    LabWarnResultConfirm("LabWarnResultConfirm","03050302"),
    //获取手术信息
    QueryOperationList("queryOperationList","ODC_1002"),


    //发票信息查询
    QueryInvoiceList("ODS_queryInvoiceList","03050302"),
    //发票信息H5查询
    QueryInvoiceH5URL("ODS_queryInvoiceH5URL","03050302"),
    //新增发票信息
    CreateInvoice("ODS_createInvoice","03050302"),

    //处方
    //查询药房药品信息
    SyncDrugInformation("ODS_getDrugs","ODS_03020002"),
    //查询药品信息
    SyncQueryDrug("ODS_queryDrugs1","ODS_03020002"),
    //获取就诊序号
    GetVisitingRecord("ODS_getVisitingRecord","ODS_02030004"),
    //更新就诊状态
    UpdateVisitStatus("ODS_updateVisitStatus","ODS_02030005"),
    //保存病历
    SaveMedicalRecordInformation("ODS_saveMedicalRecordInformation","ODS_02100004"),
    //获取住院病历信息
    ADMISSIONNOTE("ODS_admissionNote","ODS_02100002"),
    //保存诊断
    SaveDiagnoseInformation("ODS_saveDiagnoseInformation","ODS_03010001"),
    //保存HIS处方
    SavePrescriptionInformation("ODS_savePrescriptionInformation","ODS_03040001"),
    //病历列表
    GetMedicalRecordInformation("ODS_getMedicalRecordInformation","ODS_02100005"),
    //查询诊断代码
    GetDiagnoseInformation("ODS_getDiagnoseInformation","ODS_03010002"),
    //查询处方
    GetPrescriptionInformation("ODS_getPrescriptionInformation","ODS_03040002"),
    //查询外延处方
    GetHistoryEpitaxialDrugs("ODS_getHistoryEpitaxialDrugs","ODS_03020003"),
    //查询库存药品
    SyncStoreDrugInformation("ODS_syncDrugInformation","ODS_4540407722"),
    //查询历史处方药品
    QueryHistoryPrescriptionList("ODS_QueryHistoryPrescriptionList","ODS_03020004"),
    //查询外延处方机构
    GetEpitaxialOrganization("ODS_getEpitaxialOrganization", "ODS_03040010"),
    //WHIS查询历史处方
    WHIS_HistoryPrescription("ODS_getHistoryPrescription", "ODS_03040010"),
    //删除外延处方
    DelPrescription("ODS_delPrescription","ODS_03040006"),
    //查询外延处方审核结果
    GetReasonAndWarning("ODS_getReasonAndWarning","ODS_03040007"),
    //查询机构科室所属药房
    RecipeDrugstore("ODS_recipeDrugstore","ODS_03040007"),
    //审核外延处方
    pts("ODS_pts","ODS_03020004"),
    //获取病人处置记录
    ListDisposalrecord("ODS_listDisposalrecord","ODS_03040003"),
    //查询历史处方列表
    ListHistoryRecord("ODS_listHistoryRecord","ODS_02030009"),
    //门诊-获取我的排班
    ListRostering("ODS_listRostering","ODS_02030006"),
    //门诊-获取科室排班
    ListRosteringDept("ODS_listRosteringDept","ODS_02030007"),
    //频次字典
    GetDrugFrequency("ODS_getDrugFrequency","ODS_03020017"),
    //煎法字典
    GetDrugDecoction("ODS_getDrugDecoction","ODS_03020018"),
    //脚注字典
    GetDrugFootNote("ODS_getDrugFootNote","ODS_03020019"),
    //用法字典列表
    GetDrugUsage("ODS_getDrugUsage","ODS_03020016"),
    //获取住院病人列表
    ListPatient("ODS_listPatient","ODS_02030008"),
    //根据日期批量查询查历史住院记录
    QueryInpatientRecord("ODS_QueryInpatientRecord","ODS_03120004"),
    //查询机构药房列表
    QueryDrugstoreList("ODS_queryDrugstoreList","ODS_03120004"),
    //根据日期批量查询查历史就诊记录
    QueryOutpatientRecord("ODS_QueryOutpatientRecord","ODS_03120003"),
    //诊断信息查询
    GetDiagnosticInfo("ODS_getDiagnosticInfo","ODS_00000000"),
    //检验报告信息查询（批量）
    QueryInspectReportRecord("ODS_LabReportBatchQuery","ODS_03120004"),
    //检查分类信息查询
    ExamClassifyRecords("ODS_getExamTypeList_WHIS","ODS_03070001"),
    //关联指标信息查询
    QueryCrucialRecord("ODS_CrucialBatchQuery","ODS_03050006"),
    //检验报告项目查询
    LabReportItemListQuery("LabReportItemListQuery","03050007"),
    //检验分类信息查询
    InspectClassifyItemListQuery("InspectClassifyItemListQuery","03050008"),
    //关联指标结果因素信息
    QueryCrucialResultRecord("InspectResultNatureItemListQuery","03050009");

    private String code;
    private String value;

    public static final String getValue(String code){
        for (InspectionEmum type : InspectionEmum.values()){
            if (type.getCode().equalsIgnoreCase(code.trim())){
                return type.value;
            }
        }
        return null;
    }


    public String getCode() {
        return code;
    }

    public String getValue() {
        return value;
    }
}
